Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hypervisor: L1TLB PLRU updated by sector hit mismatching Virtual bit #2952

Merged
merged 1 commit into from
Mar 23, 2022

Conversation

ingallsj
Copy link
Contributor

Related issue: after #2841

Type of change: other enhancement

Impact: no functional change

Development Phase: implementation

Release Notes
The sectorHit function in the TLB is used for PLRU updates and inserting new entries in the same sector.
The TLBEntry.hit function includes both vpn and virtual arguments to distinguish between HS/HU or VS/VU entries, but the sectorHit function does not. This won’t cause problems when inserting new entries in the same sector, but can allow misses due to mismatching Virtual bit to still update the PLRU as if they were a hit.

  1. The fix is to add a virtual argument to the TLBEntry.sectorHit function.
  2. A further optimization after the fix is to move the v bit from TLBEntryData to be a single tag bit alongside vpn.

@ingallsj ingallsj marked this pull request as ready for review March 23, 2022 18:49
@ingallsj ingallsj closed this Mar 23, 2022
@ingallsj ingallsj reopened this Mar 23, 2022
@ingallsj ingallsj merged commit ae40cef into master Mar 23, 2022
@ingallsj ingallsj deleted the tlb_sectorHit branch March 23, 2022 21:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants